package indi.kider.server.sms.service;

import indi.kider.common.model.employee.Tenant;
import indi.kider.common.model.sms.Sms;
import indi.kider.common.model.woniubus.LeaseBusQuery;
import indi.kider.common.model.woniubus.TenantInHouse;
import pers.vankid.common.model.base.CommonResponse;
import pers.vankid.common.model.base.CoreException;

import java.util.List;

/**
 * Created by shixj on 2018/6/7.
 */
public interface SmsService {
    /**
     * 消息
     * 获取消息列表
     * @return
     */
    List<Sms> getAllSmsList();
    /**
     * 消息
     * 获取超期未支付账单列表 水费
     * @return
     */
    List<Sms> getOverdueWaterBillList();
    /**
     * 获取超期未支付账单列表 电费
     * @return
     */
    List<Sms>getOverduePowerBillList();
    /**
     * 消息
     * 获取超期未支付账单列表 物业
     * @return
     */
    List<Sms> getOverdueEstateBillList();
    /**
     * 消息
     * 获取超期未支付账单列表 网费
     * @return
     */
    List<Sms>getOverdueNetBillList();
    /**
     * 消息
     * 获取超期未支付账单列表 房租
     * @return
     */
    List<Sms>getOverdueRentalBillList();
    /**
     * 消息
     * 获取即将到期的房租
     * @return
     */
    List<Sms>getDueRentalBillList();
    /**
     * 消息
     * 获取租期即将到期的
     * @return
     */
    List<Sms>getDueRentList();

    /**
     * 模板名称:员工入住提醒(企业管理人员)
     * @param tenantInHouse
     * @throws Exception
     */
    CommonResponse tenantSms(TenantInHouse tenantInHouse) throws Exception;
    /**
     * 模板名称:入住提醒(短信通知租客)
     * @param tenantInHouse
     * @return
     * @throws Exception
     */
    CommonResponse tenantSuccessSms(TenantInHouse tenantInHouse) throws Exception;

    CommonResponse tenantFailSms(TenantInHouse tenantInHouse) throws Exception;

    CommonResponse shSuccessSms(LeaseBusQuery leaseBus) throws Exception;
    /**
     * 重置锁密码短信
     * @param tenant
     * @return
     */
    CommonResponse resetLockpwdSms(Tenant tenant) throws Exception;

//    CommonResponse sendStableSms() throws Exception;
}
